package ga;

/**
 * This class depicts an individual(chromosomes).
 *
 * @author <a href="mailto:DL88250@gmail.com">Liang Ding</a>
 * @version 1.0.0.3, Mar 17, 2010
 */
abstract public class Individual implements Cloneable, Comparable<Individual> {

    private float fitness;

    abstract public void mutate();

    abstract public Individual crossover(final Individual another);

    abstract public void fit();

    abstract public Object getGenes();

    public final float getFitness() {
        return fitness;
    }

    public final void setFitness(final float fitness) {
        this.fitness = fitness;
    }
}
